package xML;

import javax.swing.*;

import questionnaire.Question;

import java.awt.*;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import java.io.IOException;

/**
 * 
 * @author Pasukaru
 * Class CreationQuestion
 * Permet d'ajouter une question dans un test, celle-ci sera enregistrée 
 * dans le fichier xML
 * 
 */
public class CreationQuestion extends JFrame {

	/**
	 * 
	 */
	private static final long serialVersionUID = 1L;
	private XMLCreation x;
	
	/**
	 * Methode de création de question (constructeur)
	 * Creer une question dans le test passé en paramètre par le menu d'options
	 * @param le nom du test dans lequel on veut insérer la question
	 */
    public CreationQuestion(final String test){
    	// On écrit l'intitulé de la question
        JLabel labelIntitule=new JLabel("Intitulé de la question : ");
        final JTextField intitule =new JTextField();
        // On écrit les quatres propositions de réponse
        JLabel reponseA = new JLabel("reponse A :");
        final JTextField A =new JTextField();
        JLabel reponseB = new JLabel("reponse B :");
        final JTextField B =new JTextField();
        JLabel reponseC = new JLabel("reponse C :");
        final JTextField C =new JTextField();
        JLabel reponseD = new JLabel("reponse D :");
        final JTextField D =new JTextField();
        // On renseigne la bonne réponse
        JLabel Bonnereponse = new JLabel("La bonne reponse est :");
        final JTextField rep =new JTextField();
        // On valide
        JButton valider = new JButton("Valider");
        // Ecouteur du bouton, déclenche l'enregistrement des données
		valider.addActionListener(new ActionListener() {
			@Override
			public void actionPerformed(ActionEvent arg0) {
				int correction =-1;
				// On associe l'int correspondant a la bonne réponse
				if(rep.getText().equals("A")) correction = 0;
				if(rep.getText().equals("B")) correction = 1;
				if(rep.getText().equals("C")) correction = 2;
				if(rep.getText().equals("D")) correction = 3;
				// On crée la question avec les données renseignées
				Question q = new Question (intitule.getText(),A.getText(),B.getText(),C.getText(),D.getText(),correction);
				try {
					// On sauvegarde la question dans le fichier xML
					x.sauvegarder(q, test);
				} catch (IOException e) {
					e.printStackTrace();
				}
			}
		});
		// On affiche
        this.setBackground(Color.BLUE);
        this.setVisible(true);
        this.setSize(this.getPreferredSize());
    }

}